package com.example.featuresdk.navigation

interface INavigationAware {
//    /**
//     * get the feature entry
//     */
//    fun featureEntry():FeatureEntry

    /**
     * process logic required when entering the feature, e.g. show notice or disclaimer
     */
    fun onEnter()

    /**
     * process logic required when resuming the feature, e.g. refresh
     */
    fun onResume()

    /**
     * process logic required when leaving the feature, e.g. show notice or disclaimer
     */
    fun onExit()

    /**
     * determine whether it is allowed to go back
     */
    fun backable(): Boolean

    /**
     * go back to previous screen
     */
    fun back()
//
//    /**
//     * get the feature viewport i.e. home screen
//     */
//    @Composable
//    fun viewport()
}